function points = hermite_lookup_point ( order )

%*****************************************************************************80
%
%% HERMITE_LOOKUP_POINTS returns abscissas of a Hermite rule.
%
%  Discussion:
%
%    Our convention is that the abscissas are numbered from left to right.
%
%    The rule is defined on (-oo,+oo).
%
%  Licensing:
%
%    This code is distributed under the GNU LGPL license. 
%
%  Modified:
%
%    07 October 2008
%
%  Author:
%
%    John Burkardt
%
%  Parameters:
%
%    Input, integer ORDER, the order of the rule.  
%    Legal values are 1, 3, 7, 15, 31, 63 and 127.
%
%    Output, real POINTS(ORDER), the abscissas.
%
  points = zeros ( order, 1 );

  if ( order < 1 )

    fprintf ( 1, '\n' );
    fprintf ( 1, 'HERMITE_LOOKUP_POINTS - Fatal error!\n' );
    fprintf ( 1, '  Illegal value of ORDER = %d\n', order );
    error ( 'HERMITE_LOOKUP_POINTS - Fatal error!' );
 
  elseif ( order == 1 )

      points =  0.0E+00;

  elseif ( order == 3 )

    points = [ ...
       -0.122474487139158904909864203735E+01, ...
        0.0E+00, ...
        0.122474487139158904909864203735E+01 ];

  elseif ( order == 7 )

    points = [ ...
       -0.265196135683523349244708200652E+01, ...
       -0.167355162876747144503180139830E+01, ...
       -0.816287882858964663038710959027E+00, ...
        0.0E+00, ...
        0.816287882858964663038710959027E+00, ...
        0.167355162876747144503180139830E+01, ...
        0.265196135683523349244708200652E+01 ];

  elseif ( order == 15 )

    points = [ ...
       -0.449999070730939155366438053053E+01, ...
       -0.366995037340445253472922383312E+01, ...
       -0.296716692790560324848896036355E+01, ...
       -0.232573248617385774545404479449E+01, ...
       -0.171999257518648893241583152515E+01, ...
       -0.113611558521092066631913490556E+01, ...
       -0.565069583255575748526020337198E+00, ...
        0.0E+00, ...
        0.565069583255575748526020337198E+00, ...
        0.113611558521092066631913490556E+01, ...
        0.171999257518648893241583152515E+01, ...
        0.232573248617385774545404479449E+01, ...
        0.296716692790560324848896036355E+01, ...
        0.366995037340445253472922383312E+01, ...
        0.449999070730939155366438053053E+01 ];
 
  elseif ( order == 31 )

    points = [ ...
       -6.9956801237185402753248521473232E+00, ...
       -6.2750787049428601427036567812530E+00, ...
       -5.6739614446185883296332558789276E+00, ...
       -5.1335955771123807045862968913996E+00, ...
       -4.6315595063128599420667997654336E+00, ...
       -4.1562717558181451724831352315314E+00, ...
       -3.7007434032314694224497164589673E+00, ...
       -3.2603207323135408104645401509648E+00, ...
       -2.8316804533902054557015640151425E+00, ...
       -2.4123177054804201051740184582119E+00, ...
       -2.0002585489356389657975562598571E+00, ...
       -1.5938858604721398261388419455550E+00, ...
       -1.1918269983500464260821358649242E+00, ...
       -0.79287697691530893968593032998830E+00, ...
       -0.39594273647142311094670041663436E+00, ...
        0.0000000000000000000000000000000E+00, ...
        0.39594273647142311094670041663436E+00, ...
        0.79287697691530893968593032998830E+00, ...
        1.1918269983500464260821358649242E+00, ...
        1.5938858604721398261388419455550E+00, ...
        2.0002585489356389657975562598571E+00, ...
        2.4123177054804201051740184582119E+00, ...
        2.8316804533902054557015640151425E+00, ...
        3.2603207323135408104645401509648E+00, ...
        3.7007434032314694224497164589673E+00, ...
        4.1562717558181451724831352315314E+00, ...
        4.6315595063128599420667997654336E+00, ...
        5.1335955771123807045862968913996E+00, ...
        5.6739614446185883296332558789276E+00, ...
        6.2750787049428601427036567812530E+00, ...
        6.9956801237185402753248521473232E+00 ];

  elseif ( order == 63 )

    points = [ ...
       -10.435499877854168053468115427285E+00, ...
       -9.8028759912974963635223935286507E+00, ...
       -9.2792019543050391319404745506496E+00, ...
       -8.8118581437284546442526628275570E+00, ...
       -8.3807683451863219343010651043788E+00, ...
       -7.9755950801420373181541806298501E+00, ...
       -7.5901395198641066762479783194468E+00, ...
       -7.2203167078889678461161324222529E+00, ...
       -6.8632544331795368527353285876066E+00, ...
       -6.5168348106821160605273395854042E+00, ...
       -6.1794379922705969862418461787263E+00, ...
       -5.8497884000810673462526582961482E+00, ...
       -5.5268572526403031425047575122840E+00, ...
       -5.2097979830408354861575136416263E+00, ...
       -4.8979018644975742350745099214868E+00, ...
       -4.5905665744435190229271294569091E+00, ...
       -4.2872733352824404031727616199454E+00, ...
       -3.9875699104197157485227052068068E+00, ...
       -3.6910577000963465117322810559754E+00, ...
       -3.3973817713303911852755941806287E+00, ...
       -3.1062230279282566329138616746036E+00, ...
       -2.8172919672837977750747135657355E+00, ...
       -2.5303236304712010926855221718499E+00, ...
       -2.2450734604812066298995918179330E+00, ...
       -1.9613138583081485293922008411321E+00, ...
       -1.6788312791720137520802800622638E+00, ...
       -1.3974237486049625107570752063702E+00, ...
       -1.1168987050996462690510970277840E+00, ...
       -0.83707109558947615977737795461293E+00, ...
       -0.55776166427908221668763665253822E+00, ...
       -0.27879538567115223986687628627202E+00, ...
        0.00000000000000000000000000000000E+00, ...
        0.27879538567115223986687628627202E+00, ...
        0.55776166427908221668763665253822E+00, ...
        0.83707109558947615977737795461293E+00, ...
        1.1168987050996462690510970277840E+00, ...
        1.3974237486049625107570752063702E+00, ...
        1.6788312791720137520802800622638E+00, ...
        1.9613138583081485293922008411321E+00, ...
        2.2450734604812066298995918179330E+00, ...
        2.5303236304712010926855221718499E+00, ...
        2.8172919672837977750747135657355E+00, ...
        3.1062230279282566329138616746036E+00, ...
        3.3973817713303911852755941806287E+00, ...
        3.6910577000963465117322810559754E+00, ...
        3.9875699104197157485227052068068E+00, ...
        4.2872733352824404031727616199454E+00, ...
        4.5905665744435190229271294569091E+00, ...
        4.8979018644975742350745099214868E+00, ...
        5.2097979830408354861575136416263E+00, ...
        5.5268572526403031425047575122840E+00, ...
        5.8497884000810673462526582961482E+00, ...
        6.1794379922705969862418461787263E+00, ...
        6.5168348106821160605273395854042E+00, ...
        6.8632544331795368527353285876066E+00, ...
        7.2203167078889678461161324222529E+00, ...
        7.5901395198641066762479783194468E+00, ...
        7.9755950801420373181541806298501E+00, ...
        8.3807683451863219343010651043788E+00, ...
        8.8118581437284546442526628275570E+00, ...
        9.2792019543050391319404745506496E+00, ...
        9.8028759912974963635223935286507E+00, ...
        10.435499877854168053468115427285E+00 ];

  elseif ( order == 127 )

    points = [ ...
       -15.228338148167350978246954433464E+00, ...
       -14.669595158833972632746354112896E+00, ...
       -14.209085995284870755168244250887E+00, ...
       -13.799722290211676634645246746673E+00, ...
       -13.423518590070950062438258321855E+00, ...
       -13.071208660474601901583995439649E+00, ...
       -12.737235652415686338138003924072E+00, ...
       -12.417939378869715805445879624069E+00, ...
       -12.110749020947747600132123508132E+00, ...
       -11.813772198267727195134584136191E+00, ...
       -11.525565112572696599167888588564E+00, ...
       -11.244994583785543445194384194300E+00, ...
       -10.971150569840247423423040263881E+00, ...
       -10.703288201027481347670940744690E+00, ...
       -10.440787957772772867742591798027E+00, ...
       -10.183127473450343888624126450357E+00, ...
       -9.9298610495114250736847004273684E+00, ...
       -9.6806044412474728038150712732737E+00, ...
       -9.4350233389881650135019598506287E+00, ...
       -9.1928244988460305715774195052527E+00, ...
       -8.9537488108565404323807890169970E+00, ...
       -8.7175658087076307363833999548548E+00, ...
       -8.4840692689832473326097180339984E+00, ...
       -8.2530736454457156579694124243888E+00, ...
       -8.0244111514703375578594739796798E+00, ...
       -7.7979293513870105420829120455591E+00, ...
       -7.5734891556083454022834960763301E+00, ...
       -7.3509631392269052701961258043733E+00, ...
       -7.1302341220350710668064025713431E+00, ...
       -6.9111939615465713197465633109366E+00, ...
       -6.6937425208758294190074417381666E+00, ...
       -6.4777867811645365448144903821487E+00, ...
       -6.2632400742737354345609723857092E+00, ...
       -6.0500214161419845694465474482388E+00, ...
       -5.8380549248774187386601690807757E+00, ...
       -5.6272693105464816659423455794909E+00, ...
       -5.4175974259243240722848425872924E+00, ...
       -5.2089758693153983587570258372239E+00, ...
       -5.0013446320386360038520809107373E+00, ...
       -4.7946467843764925009748509930857E+00, ...
       -4.5888281947698372951606485031212E+00, ...
       -4.3838372778464736294253744407459E+00, ...
       -4.1796247675352031349421189892408E+00, ...
       -3.9761435120673355916035814195920E+00, ...
       -3.7733482881250526721004678400057E+00, ...
       -3.5711956317782180447199756485249E+00, ...
       -3.3696436841717397896643629240035E+00, ...
       -3.1686520501953630191857798261495E+00, ...
       -2.9681816685955910267761649521505E+00, ...
       -2.7681946921824058801226545958892E+00, ...
       -2.5686543769473501723144013022363E+00, ...
       -2.3695249790490401080012474645702E+00, ...
       -2.1707716587411506879498498083695E+00, ...
       -1.9723603904195020079324743227565E+00, ...
       -1.7742578780516791584676442103681E+00, ...
       -1.5764314753267801315519597621879E+00, ...
       -1.3788491099261778091441557053728E+00, ...
       -1.1814792113700685848678583598423E+00, ...
       -0.98429064194027277726568984213773E+00, ...
       -0.78725263021825034151596831878971E+00, ...
       -0.59033470680942102142230439346102E+00, ...
       -0.39350664185130136568037826200185E+00, ...
       -0.19673838392423251964272239737078E+00, ...
        0.0000000000000000000000000000000E+00, ...
        0.19673838392423251964272239737078E+00, ...
        0.39350664185130136568037826200185E+00, ...
        0.59033470680942102142230439346102E+00, ...
        0.78725263021825034151596831878971E+00, ...
        0.98429064194027277726568984213773E+00, ...
        1.1814792113700685848678583598423E+00, ...
        1.3788491099261778091441557053728E+00, ...
        1.5764314753267801315519597621879E+00, ...
        1.7742578780516791584676442103681E+00, ...
        1.9723603904195020079324743227565E+00, ...
        2.1707716587411506879498498083695E+00, ...
        2.3695249790490401080012474645702E+00, ...
        2.5686543769473501723144013022363E+00, ...
        2.7681946921824058801226545958892E+00, ...
        2.9681816685955910267761649521505E+00, ...
        3.1686520501953630191857798261495E+00, ...
        3.3696436841717397896643629240035E+00, ...
        3.5711956317782180447199756485249E+00, ...
        3.7733482881250526721004678400057E+00, ...
        3.9761435120673355916035814195920E+00, ...
        4.1796247675352031349421189892408E+00, ...
        4.3838372778464736294253744407459E+00, ...
        4.5888281947698372951606485031212E+00, ...
        4.7946467843764925009748509930857E+00, ...
        5.0013446320386360038520809107373E+00, ...
        5.2089758693153983587570258372239E+00, ...
        5.4175974259243240722848425872924E+00, ...
        5.6272693105464816659423455794909E+00, ...
        5.8380549248774187386601690807757E+00, ...
        6.0500214161419845694465474482388E+00, ...
        6.2632400742737354345609723857092E+00, ...
        6.4777867811645365448144903821487E+00, ...
        6.6937425208758294190074417381666E+00, ...
        6.9111939615465713197465633109366E+00, ...
        7.1302341220350710668064025713431E+00, ...
        7.3509631392269052701961258043733E+00, ...
        7.5734891556083454022834960763301E+00, ...
        7.7979293513870105420829120455591E+00, ...
        8.0244111514703375578594739796798E+00, ...
        8.2530736454457156579694124243888E+00, ...
        8.4840692689832473326097180339984E+00, ...
        8.7175658087076307363833999548548E+00, ...
        8.9537488108565404323807890169970E+00, ...
        9.1928244988460305715774195052527E+00, ...
        9.4350233389881650135019598506287E+00, ...
        9.6806044412474728038150712732737E+00, ...
        9.9298610495114250736847004273684E+00, ...
        10.183127473450343888624126450357E+00, ...
        10.440787957772772867742591798027E+00, ...
        10.703288201027481347670940744690E+00, ...
        10.971150569840247423423040263881E+00, ...
        11.244994583785543445194384194300E+00, ...
        11.525565112572696599167888588564E+00, ...
        11.813772198267727195134584136191E+00, ...
        12.110749020947747600132123508132E+00, ...
        12.417939378869715805445879624069E+00, ...
        12.737235652415686338138003924072E+00, ...
        13.071208660474601901583995439649E+00, ...
        13.423518590070950062438258321855E+00, ...
        13.799722290211676634645246746673E+00, ...
        14.209085995284870755168244250887E+00, ...
        14.669595158833972632746354112896E+00, ...
        15.228338148167350978246954433464E+00 ];

  else
    fprintf ( 1, '\n' );
    fprintf ( 1, 'HERMITE_LOOKUP_POINTS - Fatal error!\n' );
    fprintf ( 1, '  Illegal input value of ORDER = %d\n', order );
    error ( 'HERMITE_LOOKUP_POINTS - Fatal error!' );
  end

  return
end
